"""
习题  28:  布尔表达式练习 
"""

"""
上一节你学到的逻辑组合的正式名称是“布尔逻辑表达式(boolean logic 
expression)”。在编程中，布尔逻辑可以说是无处不在。它们是计算机运算的基
础和重要组成部分，掌握它们就跟学音乐掌握音阶一样重要。 
在这节练习中，你将在 python 里使用到上节学到的逻辑表达式。先为下面的每
一个逻辑问题写出你认为的答案，每一题的答案要么为  True  要么为  False。写
完以后，你需要将 python 运行起来，把这些逻辑语句输入进去，确认你写的答
案是否正确。 

1.   True and True 
2.   False and True 
3.   1 == 1 and 2 == 1 
4.   "test" == "test" 
5.   1 == 1 or 2 != 1 
6.   True and 1 == 1 
7.   False and 0 != 0 
8.   True or 1 == 1 
9.   "test" == "testing" 
10. 1 != 0 and 2 == 1 
11. "test" != "testing" 
12. "test" == 1 
13. not (True and False) 
14. not (1 == 1 and 0 != 1) 
15. not (10 == 1 or 1000 == 1000) 
16. not (1 != 10 or 3 == 4) 
17. not ("testing" == "testing" and "Zed" == "Cool Guy") 
18. 1 == 1 and not ("testing" == 1 or 1 == 0) 
19. "chunky" == "bacon" and not (3 == 4 or 3 == 3) 
20. 3 == 3 and not ("testing" == "testing" or "Python" == "Fun") 

在本节结尾的地方我会给你一个理清复杂逻辑的技巧。 
所有的布尔逻辑表达式都可以用下面的简单流程得到结果： 

1.   找到相等判断的部分  (== or !=)，将其改写为其最终值  (True  或  False)。 
2.   找到括号里的  and/or，先算出它们的值。 
3.   找到每一个  not，算出他们反过来的值。
4.   找到剩下的  and/or，解出它们的值。 
5.   等你都做完后，剩下的结果应该就是  True  或者  False  了。 

"""